package com.md.model.request.login;

import io.swagger.annotations.ApiModel;
import lombok.Data;

import java.util.Map;

/**
 * @author 刘骄阳
 * 2024-03-24 1:07
 */
@Data
@ApiModel("azure登录请求")
public class AzureSamlLoginRequest {

  /**
   * 原始哈希(hash)
   */
  private String hash;

  /**
   * 公钥加密后的值
   */
  private String sign;


  public String sign(final SignRequest signRequest) {
    return null;
  }

  @Data
  private static class SignRequest {
    /**
     * 回调地址
     * 用于登录后回调到对应的登录页面
     */
    private String callbackUrl;

    /**
     * code值
     * 与登录中心对接,获取到对应登录中心的code进行与对应的微软登录
     */
    private String code;

    /**
     * 加密用的公钥
     * 调用调用方的加密密钥(可选: 不传则明文传输)
     */
    private String securityKey;

    /**
     * 排序规则
     * 加密时候排序规则
     */
    private Integer sortRule;

    /**
     * 额外参数
     * 用于透传的参数,登录时会原封不动的响应
     */
    private Map<String, String> extraInfo;
  }
}
